home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-05-01 | 6.8 KB | 209 lines | [TEXT/MPS ] |
- /*
- File: MacTCP.idl
-
- Contains: TCP Manager Interfaces.
-
- Version: Technology: MacTCP 2.0.6
- Release: Universal Interfaces 3.0d3 on Copland DR1
-
- Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
-
- Bugs?: If you find a problem with this file, send the file and version
- information (from above) and the problem description to:
-
- Internet: apple.bugs@applelink.apple.com
- AppleLink: APPLE.BUGS
-
- */
- #ifndef __MACTCP_IDL__
- #define __MACTCP_IDL__
-
- #include <somobj.idl>
- #include <somcls.idl>
-
- #ifndef __TYPES_IDL__
- #include <Types.idl>
- #endif
- #ifndef __MIXEDMODE_IDL__
- #include <MixedMode.idl>
- #endif
- #ifndef __APPLETALK_IDL__
- #include <AppleTalk.idl>
- #endif
-
- #ifdef __SOMIDL__
-
- #if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
- /*
- Developer Notes:
- 0. This MacTCP header replaces what used to be defined in the following header files
- MacTCPCommonTypes.h
- GetMyIPAddr.h
- MiscIPPB.h
- TCPPB.h
- UDPPB.h
-
- When the various control calls are made to the ip driver, you must set up a
- NewRoutineDescriptor for every non-nil completion routine and/or notifyProc parameter.
- Otherwise, the 68K driver code, will not correctly call your routine.
- 1. For ipctlGetAddr Control calls, use NewGetIPIOCompletionProc
- to set up a GetIPIOCompletionUPP universal procptr to pass as
- the ioCompletion parameter.
- 2. For the ipctlEchoICMP and ipctlLAPStats Control calls, use
- NewIPIOCompletion to set up a IPIOCompletionUPP universal procptr
- to pass in the ioCompletion field of the parameter block.
- 3. For TCPCreatePB Control calls, use NewTCPNotifyProc to set up a
- TCPNotifyUPP universal procptr to pass in the notifyProc field
- of the parameter block
- 4. For all of the TCP Control calls using the TCPiopb parameter block,
- use NewTCPIOCompletionProc to set up a TCPIOCompletionUPP
- universal procptr to pass in the ioCompletion field of the paramter
- block.
- 5. For UDBCreatePB Control calls, use NewUDPNotifyProc to set up a
- UDPNotifyUPP universal procptr to pass in the notifyProc field
- of the parameter block
- 6. For all of the UDP Control calls using the UDPiopb parameter block,
- use NewUDPIOCompletionProc to set up a UDPIOCompletionUPP
- universal procptr to pass in the ioCompletion field of the paramter
- block.
- 7. For all calls implementing a notifyProc or ioCompletion routine
- which was set up using a NewTCPRoutineProc call, do not call
- DisposeRoutineSDescriptor on the universal procptr until
- after the completion or notify proc has completed.
- */
- /* MacTCP return Codes in the range -23000 through -23049 */
- /* Error codes from internal IP functions */
- /* 8-bit quantity */
- typedef UInt8 b_8;
-
- /* 16-bit quantity */
- typedef UInt16 b_16;
-
- /* 32-bit quantity */
- typedef UInt32 b_32;
-
- /* IP address is 32-bits */
- typedef b_32 ip_addr;
-
- typedef SOMLargeStruct ip_addrbytes; /* Derived from a struct of 8 bytes in size */
-
- typedef SOMLargeStruct wdsEntry; /* Derived from a struct of 6 bytes in size */
-
- typedef SOMLargeStruct rdsEntry; /* Derived from a struct of 6 bytes in size */
-
- typedef unsigned long BufferPtr;
-
- typedef unsigned long StreamPtr;
-
- typedef unsigned short ICMPMsgType;
-
- typedef b_16 ip_port;
-
- typedef SOMLargeStruct ICMPReport; /* Derived from a struct of 24 bytes in size */
-
- /* csCode to get our IP address */
-
-
- typedef OpaquePtr GetIPIOCompletionProcPtr;
- typedef OpaquePtr GetIPIOCompletionUPP;
- typedef SOMLargeStruct GetAddrParamBlock; /* Derived from a struct of 36 bytes in size */
-
- /* control codes */
-
-
- typedef OpaquePtr IPIOCompletionProcPtr;
- typedef OpaquePtr IPIOCompletionUPP;
- typedef SOMLargeStruct ICMPParamBlock; /* Derived from a struct of 72 bytes in size */
-
- typedef OpaquePtr ICMPEchoNotifyProcPtr;
- typedef OpaquePtr ICMPEchoNotifyUPP;
-
-
- typedef SOMLargeStruct IPParamBlock; /* Derived from a struct of 58 bytes in size */
-
- typedef SOMLargeStruct nbp_entry; /* Derived from a struct of 136 bytes in size */
-
- typedef SOMLargeStruct Enet_addr; /* Derived from a struct of 6 bytes in size */
-
- typedef SOMLargeStruct arp_entry; /* Derived from a struct of 14 bytes in size */
-
- typedef SOMLargeStruct LAPStatsAddrXlation; /* Derived from a struct of 8 bytes in size */
-
- typedef SOMLargeStruct LAPStats; /* Derived from a struct of 24 bytes in size */
-
- /* number of ARP table entries */
- /* Command codes */
- typedef unsigned short TCPEventCode;
-
- typedef unsigned short TCPTerminationReason;
-
- typedef OpaquePtr TCPNotifyProcPtr;
- typedef OpaquePtr TCPNotifyUPP;
- typedef unsigned short tcp_port;
-
- /* ValidityFlags */
- /* TOSFlags */
- typedef SOMLargeStruct TCPCreatePB; /* Derived from a struct of 16 bytes in size */
-
- typedef SOMLargeStruct TCPOpenPB; /* Derived from a struct of 66 bytes in size */
-
- typedef SOMLargeStruct TCPSendPB; /* Derived from a struct of 20 bytes in size */
-
- /* for receive and return rcv buff calls */
- /* Note: the filler in the following structure is in a different location than */
- /* that specified in the Programmer's Guide. */
- typedef SOMLargeStruct TCPReceivePB; /* Derived from a struct of 22 bytes in size */
-
- typedef SOMLargeStruct TCPClosePB; /* Derived from a struct of 8 bytes in size */
-
- typedef SOMLargeStruct HistoBucket; /* Derived from a struct of 6 bytes in size */
-
- typedef SOMLargeStruct TCPConnectionStats; /* Derived from a struct of 86 bytes in size */
-
- typedef SOMLargeStruct TCPStatusPB; /* Derived from a struct of 70 bytes in size */
-
- typedef SOMFourByteStruct TCPAbortPB; /* Derived from a struct of 4 bytes in size */
-
- typedef SOMLargeStruct TCPParam; /* Derived from a struct of 24 bytes in size */
-
- typedef SOMLargeStruct TCPStats; /* Derived from a struct of 52 bytes in size */
-
- typedef OpaquePtr StreamPPtr; /* Substituted OpaquePtr for “StreamPtr*” */
-
- typedef SOMLargeStruct TCPGlobalInfoPB; /* Derived from a struct of 18 bytes in size */
-
-
-
- typedef OpaquePtr TCPIOCompletionProcPtr;
- typedef OpaquePtr TCPIOCompletionUPP;
- typedef SOMLargeStruct TCPiopb; /* Derived from a struct of 256 bytes in size */
-
- typedef unsigned short UDPEventCode;
-
- typedef OpaquePtr UDPNotifyProcPtr;
- typedef OpaquePtr UDPNotifyUPP;
- typedef unsigned short udp_port;
-
- /* for create and release calls */
- typedef SOMLargeStruct UDPCreatePB; /* Derived from a struct of 20 bytes in size */
-
- typedef SOMLargeStruct UDPSendPB; /* Derived from a struct of 22 bytes in size */
-
- /* for receive and buffer return calls */
- typedef SOMLargeStruct UDPReceivePB; /* Derived from a struct of 26 bytes in size */
-
- typedef SOMLargeStruct UDPMTUPB; /* Derived from a struct of 10 bytes in size */
-
-
-
- typedef OpaquePtr UDPIOCompletionProcPtr;
- typedef OpaquePtr UDPIOCompletionUPP;
- typedef SOMLargeStruct UDPiopb; /* Derived from a struct of 110 bytes in size */
-
- #endif
-
- #endif /* __SOMIDL__ */
-
- #endif /* __MACTCP_IDL__ */
-
-